One of the major trends in industrial process control is the increasing size and complexity of the systems, both drive and non-drive, being controlled. An example of this is the current popularity of the continuous caster in the steel industry. In this application a relatively simple batch process is replaced by a highly complex and sophisticated system. Similar examples are readily available in other industries. In any case, the resulting systems become unmanageable if considered as a whole entity. Thus, in order to comprehend and manage such complex systems, one must be able to partition the overall system into identifiable subsystems which, in turn, can be partitioned into smaller subsystems until a level is reached that consists of manageable units.
The traditional hardware for implementing large process control systems has generally limited the structuring of the system sections into a hierarchical arrangement. The reporting of system diagnostics or operating data to a host computer, and the execution of computer commands by the sections have proven to be difficult. In addition, traditional hardware cannot be easily modified to adjust for changed system conditions. The foregoing problems were remedied to a certain extent by the introduction of programmable controllers. Programmable controllers can report data to a higher system level, can execute commands from these higher system levels, and can be reprogrammed for changed conditions. The use of programmable controllers, however, creates several problems which are inherent with such controllers. For example, the software associated with a programmable controller is tied specifically to the hardware configuration utilized, making it difficult to reuse the program or portions thereof In addition, the program utilized by the programmable controller must deal with a wide range of problems requiring very different response times. In order to achieve the desired system performance, the programmer must use extensive program branching which makes the software difficult to troubleshoot, maintain, and alter. If program size and/or the input/output count grows beyond the scope of the selected programmable controller, extensive software redesign is usually required in order to move to a larger programmable controller. Furthermore, it has been found that communication to peripherals and complex mathematical operations present difficulty in applications utilizing programmable controllers.
Because of the foregoing, it has become desirable to develop a control system device that can be used in industrial and process control applications, and which can be utilized in a network hierarchical arrangement wherein the control devices can communicate with one another and yet operate as totally independent units.